package com.wang.springframework.beans.factory.config;

import com.wang.springframework.beans.BeansException;

/**
 * @author wangjianhua
 * @Description 修改实例化bean对象的接口
 * @date 2021/8/25/025 10:56
 **/
public interface BeanPostProcessor {

    /**
     * 在bean对象执行初始化方法之前 执行此方法
     * @param bean bean
     * @param beanName beanName
     * @return bean
     * @throws BeansException 异常
     */
    Object postProcessorBeforeInitialization(Object bean, String beanName) throws BeansException;

    /**
     * 在bean对象执行初始化方法之后 执行此方法
     * @param bean bean
     * @param beanName beanName
     * @return bean
     * @throws BeansException 异常
     */
    Object postProcessorAfterInitialization(Object bean, String beanName) throws BeansException;
}
